precision mediump float; // 中精度浮点数

attribute vec2 u_position;
attribute vec2 uv;

uniform vec2 u_resolution;
uniform vec2 u_ratio;

varying vec2 vUV;

void main( ){

    vUV = uv;

    float ratio = u_resolution.x / u_resolution.y;

    vec2 position = u_position / u_resolution;
    position.x /= u_ratio.x;
    position.y /= u_ratio.y;
    position *= 2.;
    position -= vec2( 1. );
    position *= vec2( 1. , - 1. );
    gl_Position = vec4( position , 0. , 1. );
}
